

#include "iostream"
#include "vector"
#include "unordered_map"
#include "algorithm"

struct Sol{
    std::vector<int> buf;
    std::vector<int> dp;
    //最长不减子序列
    //某一项往前找
    void oneset(){
        int n;std::cin>>n;
        buf.resize(n);
        dp.resize(n);
        for(int i=0;i<n;i++){
            std::cin>>buf[i];
        }
        int max=0;
        for(int i=0;i<n;i++){
            dp[i]=1;
            for(int j=i-1;j>=0;j--){
                if(buf[j]<=buf[i]){
                    if(dp[j]+1>dp[i]){
                        dp[i]=dp[j]+1;
                    }
//                    break;
                }
            }
            max= std::max(max,dp[i]);
        }
        printf("%d\n",max);
        ;
    }
    void run(int n){
        for(int i=0;i<n;i++){
            oneset();
        }
    }
};

int main() {
    int n;//测试次数
//    is_huiwen(1441,10);
    while (std::cin >> n) {
        Sol().run(n);
    }
//    while(1){}
    return 0;
}